<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // var stu = {
        //     name: 'zs',
        //     age: '23',
        //     score: '90',
        //     study: function () {
        //         console.log('ok')
        //     }
        // }

        //获取stu对象的属性名，返回所有属性名构成的数组
        //字面量和new object 创建的对象，属性数组中包含方法名
        //构造函数方式，属性数组中只包含构造函数中定义的属性和方法，不包含原型对象上定义的方法
        //属性数组中只包含实例属性，不包含静态属性
        // var keys = Object.keys(stu);
        // console.log(keys);



        //调用数组的forEach方法遍历数组
        var nums = [100, 200, 300];
        //回调函数在遍历到数组中的每个数组元素就调用一次
        //第一个参数是遍历到的数组元素
        //第二个 当前数组的下标
        //第三个 是当前数组
        nums.forEach(function (val, index, arr) {
            console.log(val, index, arr);
        })


        //过滤数组中的非偶数
        var nums = [1, 2, 3, 4, 5, 6, 7, 8]
        var result = nums.filter(function (val, index, arr) {
            return val % 2 == 0;
        })
        console.log(result);



        var datas = [];
        for (var i = 0; i < 100; i++) {
            datas.push(i + 2);
        }
        console.log(datas);
        //判断数组中是否有质数
        var result = datas.some(function (val, index, arr) {
            var flag = true;
            for (var j = 2; j < val; j++) {
                // return val % j != 0;
                if (val % j == 0) {
                    flag = false;
                    break;
                }
            }
            return flag;
        })
        if (result) {
            console.log('数组中有质数' + result);
        } else {
            console.log('无质数')
        }



    </script>
</body>

</html>